78 research outputs found

    On Matrices, Automata, and Double Counting

    Get PDF
    Matrix models are ubiquitous for constraint problems. Many such problems have a matrix of variables M, with the same constraint defined by a finite-state automaton A on each row of M and a global cardinality constraint gcc on each column of M. We give two methods for deriving, by double counting, necessary conditions on the cardinality variables of the gcc constraints from the automaton A. The first method yields linear necessary conditions and simple arithmetic constraints. The second method introduces the cardinality automaton, which abstracts the overall behaviour of all the row automata and can be encoded by a set of linear constraints. We evaluate the impact of our methods on a large set of nurse rostering problem instances

    Conjunctions of Among Constraints

    Full text link
    Many existing global constraints can be encoded as a conjunction of among constraints. An among constraint holds if the number of the variables in its scope whose value belongs to a prespecified set, which we call its range, is within some given bounds. It is known that domain filtering algorithms can benefit from reasoning about the interaction of among constraints so that values can be filtered out taking into consideration several among constraints simultaneously. The present pa- per embarks into a systematic investigation on the circumstances under which it is possible to obtain efficient and complete domain filtering algorithms for conjunctions of among constraints. We start by observing that restrictions on both the scope and the range of the among constraints are necessary to obtain meaningful results. Then, we derive a domain flow-based filtering algorithm and present several applications. In particular, it is shown that the algorithm unifies and generalizes several previous existing results.Comment: 15 pages plus appendi

    Optimal General Matchings

    Full text link
    Given a graph G=(V,E)G=(V,E) and for each vertex vVv \in V a subset B(v)B(v) of the set {0,1,,dG(v)}\{0,1,\ldots, d_G(v)\}, where dG(v)d_G(v) denotes the degree of vertex vv in the graph GG, a BB-factor of GG is any set FEF \subseteq E such that dF(v)B(v)d_F(v) \in B(v) for each vertex vv, where dF(v)d_F(v) denotes the number of edges of FF incident to vv. The general factor problem asks the existence of a BB-factor in a given graph. A set B(v)B(v) is said to have a {\em gap of length} pp if there exists a natural number kB(v)k \in B(v) such that k+1,,k+pB(v)k+1, \ldots, k+p \notin B(v) and k+p+1B(v)k+p+1 \in B(v). Without any restrictions the general factor problem is NP-complete. However, if no set B(v)B(v) contains a gap of length greater than 11, then the problem can be solved in polynomial time and Cornuejols \cite{Cor} presented an algorithm for finding a BB-factor, if it exists. In this paper we consider a weighted version of the general factor problem, in which each edge has a nonnegative weight and we are interested in finding a BB-factor of maximum (or minimum) weight. In particular, this version comprises the minimum/maximum cardinality variant of the general factor problem, where we want to find a BB-factor having a minimum/maximum number of edges. We present an algorithm for the maximum/minimum weight BB-factor for the case when no set B(v)B(v) contains a gap of length greater than 11. This also yields the first polynomial time algorithm for the maximum/minimum cardinality BB-factor for this case

    Constraint satisfaction parameterized by solution size

    Full text link
    In the constraint satisfaction problem (CSP) corresponding to a constraint language (i.e., a set of relations) Γ\Gamma, the goal is to find an assignment of values to variables so that a given set of constraints specified by relations from Γ\Gamma is satisfied. The complexity of this problem has received substantial amount of attention in the past decade. In this paper we study the fixed-parameter tractability of constraint satisfaction problems parameterized by the size of the solution in the following sense: one of the possible values, say 0, is "free," and the number of variables allowed to take other, "expensive," values is restricted. A size constraint requires that exactly kk variables take nonzero values. We also study a more refined version of this restriction: a global cardinality constraint prescribes how many variables have to be assigned each particular value. We study the parameterized complexity of these types of CSPs where the parameter is the required number kk of nonzero variables. As special cases, we can obtain natural and well-studied parameterized problems such as Independent Set, Vertex Cover, d-Hitting Set, Biclique, etc. In the case of constraint languages closed under substitution of constants, we give a complete characterization of the fixed-parameter tractable cases of CSPs with size constraints, and we show that all the remaining problems are W[1]-hard. For CSPs with cardinality constraints, we obtain a similar classification, but for some of the problems we are only able to show that they are Biclique-hard. The exact parameterized complexity of the Biclique problem is a notorious open problem, although it is believed to be W[1]-hard.Comment: To appear in SICOMP. Conference version in ICALP 201

    Improvement of the Embarrassingly Parallel Search for Data Centers

    Get PDF
    International audienceWe propose an adaptation of the Embarrassingly Parallel Search (EPS) method for data centers. EPS is a simple but efficient method for parallel solving of CSPs. EPS decomposes the problem in many distinct subproblems which are then solved independently by workers. EPS performed well on multi-cores machines (40), but some issues arise when using more cores in a datacenter. Here, we identify the decomposition as the cause of the degradation and propose a parallel decomposition to address this issue. Thanks to it, EPS gives almost linear speedup and outperforms work stealing by orders of magnitude using the Gecode solver

    On the speed of constraint propagation and the time complexity of arc consistency testing

    Full text link
    Establishing arc consistency on two relational structures is one of the most popular heuristics for the constraint satisfaction problem. We aim at determining the time complexity of arc consistency testing. The input structures GG and HH can be supposed to be connected colored graphs, as the general problem reduces to this particular case. We first observe the upper bound O(e(G)v(H)+v(G)e(H))O(e(G)v(H)+v(G)e(H)), which implies the bound O(e(G)e(H))O(e(G)e(H)) in terms of the number of edges and the bound O((v(G)+v(H))3)O((v(G)+v(H))^3) in terms of the number of vertices. We then show that both bounds are tight up to a constant factor as long as an arc consistency algorithm is based on constraint propagation (like any algorithm currently known). Our argument for the lower bounds is based on examples of slow constraint propagation. We measure the speed of constraint propagation observed on a pair G,HG,H by the size of a proof, in a natural combinatorial proof system, that Spoiler wins the existential 2-pebble game on G,HG,H. The proof size is bounded from below by the game length D(G,H)D(G,H), and a crucial ingredient of our analysis is the existence of G,HG,H with D(G,H)=Ω(v(G)v(H))D(G,H)=\Omega(v(G)v(H)). We find one such example among old benchmark instances for the arc consistency problem and also suggest a new, different construction.Comment: 19 pages, 5 figure

    Revisiting the tree Constraint

    Get PDF
    International audienceThis paper revisits the tree constraint introduced in [2] which partitions the nodes of a n-nodes, m-arcs directed graph into a set of node-disjoint anti-arborescences for which only certain nodes can be tree roots. We introduce a new filtering algorithm that enforces generalized arc-consistency in O(n + m) time while the original filtering algorithm reaches O(nm) time. This result allows to tackle larger scale problems involving graph partitioning
    corecore